iT邦幫忙

2026 iThome 鐵人賽

DAY 13
0
AI Security

Agent的系統防禦升級系列 第 13

DAY 13 // AgentDojo 的 Workspace 模擬以及重新開始

  • 分享至 

  • xImage
  •  

原本都是在 code 完成,後來發現透過 Terminal 就能查詢 AgentDojo Benchmark 指令所提供的參數:

python -m agentdojo.scripts.benchmark --help

https://ithelp.ithome.com.tw/upload/images/20260906/20183776NhxnzbMURI.png
https://ithelp.ithome.com.tw/upload/images/20260906/20183776RUOrW8eDFQ.png

可以看到 Benchmark 所支援的相關參數、環境以及模型設定。這一步主要是用來確認 AgentDojo 是否已經正確安裝,同時也能了解目前版本可以使用哪些功能。

接著嘗試進行 Workspace 模擬。Workspace 可以是 AgentDojo 提供的一個測試環境,讓 AI Agent 在模擬的工作空間中執行任務:

python -m agentdojo.scripts.benchmark -s workspace --model GPT_4O_2024_05_13

其中 -s workspace 表示選擇 Workspace 這個 Scenario,而 --model GPT_4O_2024_05_13 則是指定要使用的模型。

第一次執行出現錯誤。發現 Terminal 環境還沒有取得 OpenAI API Key。因為 AgentDojo 在執行模型時需要透過 API 呼叫模型,所以必須先讓目前的 Terminal 環境知道 API Key:

$env:OPENAI_API_KEY="sk-..."

指令是將 API Key 設定成目前 PowerShell 工作階段中的環境變數。完成後 AgentDojo 在執行時就能從環境變數中取得 API Key,而不需要直接把 Key 寫進 code 裡。
設定 API Key 後又有錯誤。之後發現重要原因是 Python 的版本問題。當時電腦上的 Python 已經更新到 3.13 ,但 AgentDojo 所使用的部分套件只支援到 3.12。(之前說要到3.14??,這邊要在理解)

安裝 Python 3.12 後,重新啟動 VS Code,接著在專案目錄中建立虛擬環境:

python -m venv .venv

這個指令會建立一個名為 .venv 的 Python 虛擬環境。虛擬環境的主要目的,是讓目前這個 AgentDojo 專案擁有自己獨立的 Python 與套件環境,不會衝突到電腦其他專案:

.\.venv\Scripts\Activate.ps1

成功啟動後,Terminal 前面會出現(.venv)
https://ithelp.ithome.com.tw/upload/images/20260906/20183776x4u19kTSTM.png

這代表目前執行的 Python 與套件安裝會以 .venv 這個虛擬環境為主。

接下來先更新 pip 和下載 AgentDojo (因為在剛下載的版本沒有,要在重新下載):

python -m pip install --upgrade 

pip install agentdojo

完成後再設定 OpenAI API Key,並重新執行 Workspace Benchmark,正式模擬前再進行一次環境確認。

這次需要確認的條件主要有五項:

  1. Python 3.12
  2. AgentDojo
  3. API Key
  4. Model:GPT_4O_2024_05_13
  5. Workspace YAML:確認 Workspace 的設定檔存在且格式正確

目前操作流程:
Python 3.12 > 建立 .venv > 啟動虛擬環境 > 更新 pip > 安裝 AgentDojo > 設定 API Key > 確認 Model > 確認 Workspace YAML → 執行 Benchmark。

原本嘗試透過 Code 進行模擬,轉成直接使用 Terminal 執行,讓整個環境比較清楚和容易理解。


上一篇
DAY 12 // agentdojo.benchmark安全評測的主要模組
下一篇
DAY 14 // 改用 Ollama 本地模型完成 Workspace 模擬
系列文
Agent的系統防禦升級22
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言